<?php
defined('SYSPATH') OR die('No Direct Script Access');
session_name('curriculo');
session_start();
//session_unset();
include "application/classes/validator/ValidadorDeFormularioDeCandidato.php";
include "application/classes/model/Candidato.php";
include "application/classes/visualizacao/FormularioDeCandidato.php";

Class Controller_GerenciadorDeCandidato extends Controller_TemplatePadrao
{

	public $errors = array();
	public $camposDoFormulario;
	public $sheets = array('reset' => 'screen', 'main' => 'screen');
	public $formularioDeCandidato;
	
	function action_index(){
		//Indicação de pagina selecionada pelo candidato - elemento de visualização
		$_SESSION['pagina_corrente'] = "candidato";	

		
		if(isset($_SESSION['candidato'])){
			$candidato =  unserialize($_SESSION['candidato']);
			$this->formularioDeCandidato = new FormularioDeCandidato($candidato);
		}
		else{
			$this->formularioDeCandidato = new FormularioDeCandidato();
		}		
		
	    $this->carregarFormulario();
	}
	
	public function carregarFormulario(){
		$ko3_inner               = array();
		$ko3                     = array();
		$this->template->title   = 'Psicopuc WWW Ver. 3.0';
		View::set_global('x', 'Esta e uma variavel global');
		$ko3_inner['content']    = 'Dados(Exemplo)';
		$ko3['content']          = 'Dados2(Exemplo)';
		$this->template->header  = View::factory('blocks/pagina_header', $ko3_inner)
	                              ->render();
	    $this->template->menu    = View::factory('blocks/menu_formulario')
	    						  ->render();
	    $this->template->footer  = View::factory('blocks/pagina_footer')
	                              ->render();
	    $this->template->footer  = View::factory('blocks/pagina_footer')
	                              ->render();                          
	    $this->template->content = View::factory('Formularios/FormularioDeCandidato', $ko3)		
	    ->bind('errors', $this->errors)
	    ->bind('camposDoFormulario', $this->camposDoFormulario)                     
		->bind('formularioDeCandidato', $this->formularioDeCandidato);
	}


	public function action_validarForm(){

		$validator = new ValidadorDeFormularioDeCandidato();
		$validator->verificarCamposValidos();
		$this->formularioDeCandidato = new FormularioDeCandidato();
		//echo "<br>Saindo do Validator para o fluxo do controller<br>";

		if(!$validator->isFormularioValido()){
			$this->errors = $validator->getErros();
			$this->camposDoFormulario = $validator->getCamposDoFormulario();			
			$this->formularioDeCandidato->recarregarDadosDoFormulario();			
			$this->carregarFormulario();

		}
		else{			
			$nome = $_POST['Nome'];
			$email = $_POST['Email'];
			$sexo = $_POST['Sexo'];
			$dataDeNascimento = $_POST['dataNascimentoDia'] . "/" . $_POST['dataNascimentoMes'] . "/" . $_POST['dataNascimentoAno'];
			$estadoCivil = $_POST['EstadoCivil'];
			$telefoneResidencial = $_POST['TelefoneResidencial'];
			$telefoneCelular = $_POST['TelefoneCelular'];
			$outrosTelefones = $_POST['OutrosTelefones'];
			$rg = $_POST['RG'];
			$cpf = $_POST['CPF'];
			$candidato = new Candidato($nome, $rg, $cpf, $email, $dataDeNascimento, $sexo, $estadoCivil, $telefoneResidencial, $telefoneCelular, $outrosTelefones);
		
			$_SESSION['candidato'] = serialize($candidato);
			
						
			echo "<meta http-equiv=Refresh content=0;url=".url::site()."GerenciadorDeEndereco>";
			
			
		}

		

	}
	
}

?>